package com.xyazm.order.service;

import com.xyazm.fulfill.domain.param.TriggerFulFillParam;
import com.xyazm.order.domain.dto.AfterFulfillDTO;
import com.xyazm.order.domain.entity.OrderInfoDO;

/**
 * 订单履约
 * @Author: xuyou
 * @Date: 2022/6/23 17:01
 */
public interface IOrderFulFillService {


    /**
     * 触发订单进行履约流程 2.0
     * @author xuyou
     * @date: 2022/6/23 17:02
     * @param: orderId
     */
    void triggerOrderFulFill(String orderId);


    /**
     * 构建接受订单履约参数 2.0
     * @author xuyou
     * 2022/8/15 0015 22:37
     * @param orderInfoDO
     */
    TriggerFulFillParam buildTriggerFulFillParam(OrderInfoDO orderInfoDO);


    /**
     * 通知订单物流配送结果 2.0
     * @author xuyou
     * 2022/7/21 0021 21:57
     * @param afterFulfillDTO
     */
    void informOrderAfterFulfillResult(AfterFulfillDTO afterFulfillDTO);

}
